int light = 0;

#define CHK ASSERT(light = set_light(0));

#ifndef __NO_ENVIRONMENT__
void move_or_destruct(object ob)
{
	move_object(new("/single/void"));
}
#endif

void do_tests()
{
	object ob;

#ifndef __NO_LIGHT__
	CHK;
	set_light(2);
	light += 2;
	CHK;

#ifndef __NO_ENVIRONMENT__
	ob = new(__DIR__ "light");
	ob->move(this_object());
	light += 3;
	CHK;

	destruct(ob);
	light -= 3;
	CHK;

	ob = new(__DIR__ "light");
	move_object(ob);
	light += 3;
	CHK;

	destruct(ob);
	light -= 3;
	CHK;
#endif    
#endif
}
